Optimizing Clause Resolution: Beyond Unification Factoring
نویسندگان
چکیده
While clause resolution is central to logic programming, practical eeorts to optimize resolution have largely concerned eecient clause indexing. One recent exception is Uniication Factoring 5], which optimizes backtracking through clause heads. Here we consider the problem of optimizing clause resolution in a more general setting than Uniication Factoring. One fundamental change is to use mode informationto distinguish between elementary matching and uniication operations that arise in unifying a term. In addition, we expand the traditional notion of clause resolution to allow for tabled predicates. The result is that our optimization technique becomes relevant for both top-down and bottom-up evaluations. In this expanded setting, we introduce Clause Resolution Automata (CRA), to model clause resolution and to capture its cost. Furthermore, CRAs can be readily implemented as a source transformation. We consider the problem of constructing optimal CRAs. We show that the complexity of construction depends on a variety of conditions: on whether a predicate is tabled, on whether clause order is to be preserved, and on whether information is known about modes. For classes of programs where optimal CRAs can be constructed in polynomial time, dynamic programming algorithms are speciied for their construction. For programs in which optimal CRA construction is NP-complete or NP-hard, we develop heuristics for construction of CRAs. Finally, we present experimental results that show the impact of our approach on performance and space usage of a set of representative programs.
منابع مشابه
Optimizing Clause Resolution: Beyond Uni cation Factoring
While clause resolution is central to logic programming, practical eeorts to optimize resolution have largely concerned eecient clause indexing. One recent exception is Uniication Factoring 5], which optimizes backtracking through clause heads. Here we consider the problem of optimizing clause resolution in a more general setting than Uniication Factoring. One fundamental change is to use mode ...
متن کاملPrinciples and Practice of Uni cation
The eeciency of resolution-based logic programming languages, such as Prolog, depends critically on selecting and executing sets of applicable clause heads to resolve against subgoals. Traditional approaches to this problem have focused on using indexing to determine the smallest possible applicable set. Despite their usefulness, these approaches ignore the nondeterminism inherent in many progr...
متن کاملSlot Unification Grammar and Anaphora Resolution
In this paper we propose a framework which we call Slot Unification Grammar (SUG). This framework allows to integrate different kinds of knowledge, all of them necessary for the resolution of several problems in Natural Language Processing (NLP). These problems, such as coordination, extraposition of constituents, ellipsis and anaphora, sometimes occur simultaneously and it is very useful to so...
متن کاملFactoring Out Assumptions to Speed Up MUS Extraction
In earlier work on a limited form of extended resolution for CDCL based SAT solving, new literals were introduced to factor out parts of learned clauses. The main goal was to shorten clauses, reduce proof size and memory usage and thus speed up propagation and conflict analysis. Even though some reduction was achieved, the effectiveness of this technique was rather modest for generic SAT solvin...
متن کاملTeMP: A Temporal Monodic Prover
We present TeMP—the first experimental system for testing validity of monodic temporal logic formulae. The prover implements fine-grained temporal resolution. The core operations required by the procedure are performed by an efficient resolution-based prover for classical first-order logic. 1 Monodic First-Order Temporal Logic First-Order Temporal Logic, FOTL, is an extension of classical first...
متن کامل